package com.enba.boot.generator.properties;

import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

@ConfigurationProperties(prefix = "generator")
@Data
public class GeneratorProperties {

  /** 是否启用 */
  private boolean enabled = false;

  /** 驱动连接的URL */
  private String url =
      "jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&remarks=true&useInformationSchema=true";

  /** 数据库连接用户名 */
  private String username = "root";

  /** 数据库连接密码 */
  private String password = "123456";

  /** 作者 */
  private String author = "作者";

  /** 生成文件的输出目录【 windows:D:// linux or mac:/ tmp 】 */
  private String outputDir = "./src/main/java";

  /** 设置mapperXml生成路径 */
  private String xmlDir = "./src/main/resources/mapper";

  /** 父包名。如果为空，将下面子包名必须写全部， 否则就只需写子包名 */
  private String parent = "enba.boot";

  /** 父包模块名 */
  private String moduleName = "generator";

  /** 需要包含的表名 */
  private List<String> include = new ArrayList<>();

  /** 过滤表前缀 example: addTablePrefix("t_") result: t_simple -> Simple */
  private List<String> tablePrefix = new ArrayList<>();
}
